.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
.TH "PUPPET\-FILE" "8" "May 2015" "Puppet Labs, LLC" "Puppet manual"
.
.SH "NAME"
\fBpuppet\-file\fR \- Retrieve and store files in a filebucket
.
.SH "SYNOPSIS"
puppet file \fIaction\fR [\-\-terminus TERMINUS] [\-\-extra HASH]
.
.SH "DESCRIPTION"
This subcommand interacts with objects stored in a local or remote filebucket\. File objects are accessed by their MD5 sum; see the examples for the relevant syntax\.
.
.SH "OPTIONS"
Note that any setting that\'s valid in the configuration file is also a valid long argument, although it may or may not be relevant to the present action\. For example, \fBserver\fR and \fBrun_mode\fR are valid settings, so you can specify \fB\-\-server <servername>\fR, or \fB\-\-run_mode <runmode>\fR as an argument\.
.
.P
See the configuration file documentation at \fIhttp://docs\.puppetlabs\.com/references/stable/configuration\.html\fR for the full list of acceptable parameters\. A commented list of all configuration options can also be generated by running puppet with \fB\-\-genconfig\fR\.
.
.TP
\-\-render\-as FORMAT
The format in which to render output\. The most common formats are \fBjson\fR, \fBs\fR (string), \fByaml\fR, and \fBconsole\fR, but other options such as \fBdot\fR are sometimes available\.
.
.TP
\-\-verbose
Whether to log verbosely\.
.
.TP
\-\-debug
Whether to log debug information\.
.
.TP
\-\-extra HASH
A terminus can take additional arguments to refine the operation, which are passed as an arbitrary hash to the back\-end\. Anything passed as the extra value is just send direct to the back\-end\.
.
.TP
\-\-terminus TERMINUS
Indirector faces expose indirected subsystems of Puppet\. These subsystems are each able to retrieve and alter a specific type of data (with the familiar actions of \fBfind\fR, \fBsearch\fR, \fBsave\fR, and \fBdestroy\fR) from an arbitrary number of pluggable backends\. In Puppet parlance, these backends are called terminuses\.
.
.IP
Almost all indirected subsystems have a \fBrest\fR terminus that interacts with the puppet master\'s data\. Most of them have additional terminuses for various local data models, which are in turn used by the indirected subsystem on the puppet master whenever it receives a remote request\.
.
.IP
The terminus for an action is often determined by context, but occasionally needs to be set explicitly\. See the "Notes" section of this face\'s manpage for more details\.
.
.SH "ACTIONS"
.
.TP
\fBdownload\fR \- Download a file into the local filebucket\.
\fBSYNOPSIS\fR
.
.IP
puppet file download [\-\-terminus TERMINUS] [\-\-extra HASH] ( {md5}\fIchecksum\fR | \fIpuppet_url\fR )
.
.IP
\fBDESCRIPTION\fR
.
.IP
Downloads a file from the puppet master\'s filebucket and duplicates it in the local filebucket\. This action\'s checksum syntax differs from \fBfind\fR\'s, and it can accept a <puppet:///> URL\.
.
.IP
\fBRETURNS\fR
.
.IP
Nothing\.
.
.TP
\fBfind\fR \- Retrieve a file from the filebucket\.
\fBSYNOPSIS\fR
.
.IP
puppet file find [\-\-terminus TERMINUS] [\-\-extra HASH] md5/\fImd5sum\fR
.
.IP
\fBDESCRIPTION\fR
.
.IP
Retrieve a file from the filebucket\.
.
.IP
\fBRETURNS\fR
.
.IP
The file object with the specified checksum\.
.
.IP
RENDERING ISSUES: Rendering as a string returns the contents of the file object; rendering as yaml returns a hash of metadata about said file, including but not limited to its contents\. Rendering as json is currently broken, and returns a hash containing only the contents of the file\.
.
.TP
\fBinfo\fR \- Print the default terminus class for this face\.
\fBSYNOPSIS\fR
.
.IP
puppet file info [\-\-terminus TERMINUS] [\-\-extra HASH]
.
.IP
\fBDESCRIPTION\fR
.
.IP
Prints the default terminus class for this subcommand\. Note that different run modes may have different default termini; when in doubt, specify the run mode with the \'\-\-run_mode\' option\.
.
.TP
\fBsave\fR \- API only: create or overwrite an object\.
\fBSYNOPSIS\fR
.
.IP
puppet file save [\-\-terminus TERMINUS] [\-\-extra HASH] \fIkey\fR
.
.IP
\fBDESCRIPTION\fR
.
.IP
API only: create or overwrite an object\. As the Faces framework does not currently accept data from STDIN, save actions cannot currently be invoked from the command line\.
.
.TP
\fBstore\fR \- Store a file in the local filebucket\.
\fBSYNOPSIS\fR
.
.IP
puppet file store [\-\-terminus TERMINUS] [\-\-extra HASH] \fIfile\fR
.
.IP
\fBDESCRIPTION\fR
.
.IP
Store a file in the local filebucket\.
.
.IP
\fBRETURNS\fR
.
.IP
Nothing\.
.
.SH "EXAMPLES"
\fBdownload\fR
.
.P
Download a file by URL:
.
.P
$ puppet file download puppet:///modules/editors/vim/\.vimrc
.
.P
Download a file by MD5 sum:
.
.P
$ puppet file download {md5}8f798d4e754db0ac89186bbaeaf0af18
.
.P
\fBfind\fR
.
.P
Retrieve the contents of a file:
.
.P
$ puppet file find md5/9aedba7f413c97dc65895b1cd9421f2c \-\-render\-as s
.
.P
\fBstore\fR
.
.P
Store a file:
.
.P
$ puppet file store /root/\.bashrc
.
.SH "NOTES"
To retrieve the unmunged contents of a file, you must call find with \-\-render\-as s\. Rendering as yaml will return a hash of metadata about the file, including its contents\.
.
.P
This subcommand does not interact with the \fBclientbucketdir\fR (the default local filebucket for puppet agent); it interacts with the primary "master"\-type filebucket located in the \fBbucketdir\fR\. If you wish to interact with puppet agent\'s default filebucket, you\'ll need to set the \fI\-\-bucketdir\fR option appropriately when invoking actions\.
.
.P
This subcommand is an indirector face, which exposes \fBfind\fR, \fBsearch\fR, \fBsave\fR, and \fBdestroy\fR actions for an indirected subsystem of Puppet\. Valid termini for this face include:
.
.IP "\(bu" 4
\fBfile\fR
.
.IP "\(bu" 4
\fBrest\fR
.
.IP "\(bu" 4
\fBselector\fR
.
.IP "" 0
.
.SH "COPYRIGHT AND LICENSE"
Copyright 2011 by Puppet Labs Apache 2 license; see COPYING
